#pragma once
#include <functional>
#include <iostream>
#include <vector>
//要定义一个任务集
using task=std::function<void()>;

void Print()
{
    std::cout << "我是一个打印任务" << std::endl;
}

void Sync()
{
    std::cout << "我是一个刷新任务" << std::endl;
}

void Log()
{
    std::cout << "我是一个日志保存任务" << std::endl;
}

void Commit()
{
    std::cout << "我是一个上传任务" << std::endl;
}

std::vector<task> tasks;//定义好任务集，并完成初始化

class Init
{
public:
    Init()
    {
        tasks.push_back(Print);
        tasks.push_back(Sync);
        tasks.push_back(Log);
        tasks.push_back(Commit);
    }
};

Init init;//这样自动调用构造函数后，就创建好了一个任务集

